<?php

require_once(dirname(__FILE__).'/../tokens/GcTokens.class.php');

class GcFieldDefinitions {
	const CONTENT_REFERENCE_FIELD = "field_[short-machine-type-name]_content_ref";
	const GROUP_REFERERS_FIELD    = "field_[short-machine-type-name]_referers";
	
	/**
	 * Funkcja zwraca nazwę pola pod którym należy szukać treści dla danego typu zawartości katalogowej
	 * @param unknown_type $type
	 * @return mixed
	 */
	public static function contentReferenceFieldName($type) {
		static $staticCache = array();
		if(!$staticCache[$type]) {
			$staticCache[$type] = str_replace(GcTokens::SHORT_MACHINE_TYPE_NAME, substr($type, 0, 10), self::CONTENT_REFERENCE_FIELD); 
		}
		return $staticCache[$type];
	}
	
 /**
   * Funkcja zwraca nazwę pola pod którym należy szukać podgrup 
   * @param unknown_type $type
   * @return mixed
   */
  public static function contentReferersFieldName($type) {
    static $staticCache = array();
    if(!$staticCache[$type]) {
      $staticCache[$type] = str_replace(GcTokens::SHORT_MACHINE_TYPE_NAME, substr($type, 0, 10), self::GROUP_REFERERS_FIELD); 
    }
    return $staticCache[$type];
  }
}